Program Synthesis using Conflict-Driven Learning

نویسندگان

  • Yu Feng
  • Ruben Martins
  • Osbert Bastani
  • Isil Dillig
چکیده

We propose a new conflict-driven program synthesis technique that is capable of learning from past mistakes. Given a spurious program that violates the desired specification, our synthesis algorithm identifies the root cause of the conflict and learns new lemmas that can prevent similar mistakes in the future. Specifically, we introduce the notion of equivalence modulo conflict and show how this idea can be used to learn useful lemmas that allow the synthesizer to prune large parts of the search space. We have implemented a generalpurpose CDCL-style program synthesizer called Neo and evaluate it in two different application domains, namely data wrangling in R and functional programming over lists. Our experiments demonstrate the substantial benefits of conflictdriven learning and show that Neo outperforms two stateof-the-art synthesis tools,Morpheus and DeepCoder, that target these respective domains.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

The Influence of Data-Driven Exercises Through Using a Computer Program on Vocabulary Improvement in an EFL Context

The present study was conducted to evaluate data driven learning (DDL) combined with Computer Assisted Language Learning (CALL) as an approach to improving vocabulary knowledge of Iranian postgraduates majoring in teaching English, English literature and translation. The purpose was to help language learners get familiar with DDL as a student-centered method taking advantage of a computer progr...

متن کامل

The Influence of Data-Driven Exercises Through Using a Computer Program on Vocabulary Improvement in an EFL Context

The present study was conducted to evaluate data driven learning (DDL) combined with Computer Assisted Language Learning (CALL) as an approach to improving vocabulary knowledge of Iranian postgraduates majoring in teaching English, English literature and translation. The purpose was to help language learners get familiar with DDL as a student-centered method taking advantage of a computer progr...

متن کامل

A Verified SAT Solver with Two Watched Literals Using Imperative HOL

Based on our earlier formalization of conflict-driven clause learning (CDCL) in Isabelle/HOL, we refine the CDCL calculus further to add an important optimization: two watched literals. We formalize the data structure and the invariants. Then we refine the calculus to an executable SAT solver in Standard ML: Through a chain of refinements, we target Imperative HOL using the Isabelle Refinement ...

متن کامل

Lifting CDCL to Template-Based Abstract Domains for Program Verification

The success of Conflict Driven Clause Learning (CDCL) for Boolean satisfiability has inspired adoption in other domains. We present a novel lifting of CDCL to program analysis called Abstract Conflict Driven Learning for Programs (ACDLP). ACDLP alternates between model search, which performs over-approximate deduction with constraint propagation, and conflict analysis, which performs under-appr...

متن کامل

From Backtracking to Chaff

Modern Chaff-like SAT solvers enhance plain backtracking (DLL) by Conflict-Driven Learning (CDL), including 1UIP-based Conflict-Directed Backjumping (CDB), Non-Chronological Backtracking (NCB), and 1UIP-based Conflict-Clause Recording (CCR). We show how to add these enhancements step-by-step to plain DLL to derive Chaff’s Conflict-Driven Learning algorithm, separately and independently of BCP, ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • CoRR

دوره abs/1711.08029  شماره 

صفحات  -

تاریخ انتشار 2017